1. Field of the Invention
The invention is related to computing systems and more particularly to timekeeping in computer systems.
2. Description of the Related Art
In a typical processing system, software (e.g., operating system, run-time system, application, or other software) monitors the absolute time and/or the passage of time. For example, run-time systems calculate and verify timeouts and time-stamp system events. In performing those actions, the software reads a time value from a high-resolution time source. Depending upon the workload, software accesses to the time source can be relatively frequent (e.g., tens of thousands per second). A high-resolution time source available to the software is an Advanced Configuration and Power Interface (ACPI) Power Management (PM) Timer. The ACPI is a standard for device configuration and power management that defines platform-independent interfaces for hardware discovery, configuration, power management and monitoring. The standard defines a PM Timer Register having a length (in bytes) PM_TMR_LEN, which is accessed by software using an address specified in the register block (PM_TMR_BLK). Software access of the PM Timer Register returns a running value of the PM timer. Although the PM Timer is directly accessible to some software of a virtualized processing system (e.g., a virtual machine monitor or hypervisor executing in a host mode of the virtualized processing system), the PM Timer is only indirectly accessible to other software of the virtualized processing system (e.g., a guest executing on a virtual machine under control of a virtual machine monitor).